#pragma once
#include "collection/ArrayList.hpp"
namespace yzrilyzr_soundbank{
	class DLSSampleLoop;
	EBCLASS(DLSSampleOptions){
		public:
		uint16_t unitynote;
		int16_t finetune;
		int32_t attenuation;
		uint32_t options;
		yzrilyzr_collection::ArrayList<std::shared_ptr<DLSSampleLoop>> loops;

		int32_t getAttenuation(){
			return attenuation;
		}

		void setAttenuation(int32_t attenuation){
			this->attenuation=attenuation;
		}

		int16_t getFinetune(){
			return finetune;
		}

		void setFinetune(int16_t finetune){
			this->finetune=finetune;
		}

		yzrilyzr_collection::ArrayList<std::shared_ptr<DLSSampleLoop>> & getLoops(){
			return loops;
		}

		int64_t getOptions(){
			return options;
		}

		void setOptions(int64_t options){
			this->options=options;
		}

		int32_t getUnitynote(){
			return unitynote;
		}

		void setUnitynote(int32_t unitynote){
			this->unitynote=unitynote;
		}
	};
}